2 research outputs found

    Path-Reporting Distance Oracles with Near-Logarithmic Stretch and Linear Size

    Full text link
    Given an nn-vertex undirected graph G=(V,E,w)G=(V,E,w), and a parameter kβ‰₯1k\geq1, a path-reporting distance oracle (or PRDO) is a data structure of size S(n,k)S(n,k), that given a query (u,v)∈V2(u,v)\in V^2, returns an f(k)f(k)-approximate shortest uβˆ’vu-v path PP in GG within time q(k)+O(∣P∣)q(k)+O(|P|). Here S(n,k)S(n,k), f(k)f(k) and q(k)q(k) are arbitrary functions. A landmark PRDO due to Thorup and Zwick, with an improvement of Wulff-Nilsen, has S(n,k)=O(kβ‹…n1+1k)S(n,k)=O(k\cdot n^{1+\frac{1}{k}}), f(k)=2kβˆ’1f(k)=2k-1 and q(k)=O(log⁑k)q(k)=O(\log k). The size of this oracle is Ξ©(nlog⁑n)\Omega(n\log n) for all kk. Elkin and Pettie and Neiman and Shabat devised much sparser PRDOs, but their stretch was polynomially larger than the optimal 2kβˆ’12k-1. On the other hand, for non-path-reporting distance oracles, Chechik devised a result with S(n,k)=O(n1+1k)S(n,k)=O(n^{1+\frac{1}{k}}), f(k)=2kβˆ’1f(k)=2k-1 and q(k)=O(1)q(k)=O(1). In this paper we make a dramatic progress in bridging the gap between path-reporting and non-path-reporting distance oracles. We devise a PRDO with size S(n,k)=O(⌈klog⁑log⁑nlog⁑nβŒ‰β‹…n1+1k)S(n,k)=O(\lceil\frac{k\log\log n}{\log n}\rceil\cdot n^{1+\frac{1}{k}}), stretch f(k)=O(k)f(k)=O(k) and query time q(k)=O(log⁑⌈klog⁑log⁑nlog⁑nβŒ‰)q(k)=O(\log\lceil\frac{k\log\log n}{\log n}\rceil). We can also have size O(n1+1k)O(n^{1+\frac{1}{k}}), stretch O(kβ‹…βŒˆklog⁑log⁑nlog⁑nβŒ‰)O(k\cdot\lceil\frac{k\log\log n}{\log n}\rceil) and query time q(k)=O(log⁑⌈klog⁑log⁑nlog⁑nβŒ‰)q(k)=O(\log\lceil\frac{k\log\log n}{\log n}\rceil). Our results on PRDOs are based on novel constructions of approximate distance preservers, that we devise in this paper. Specifically, we show that for any Ο΅>0\epsilon>0, any k=1,2,...k=1,2,..., and any graph GG and a collection P\mathcal{P} of pp vertex pairs, there exists a (1+Ο΅)(1+\epsilon)-approximate preserver with O(Ξ³(Ο΅,k)β‹…p+nlog⁑k+n1+1k)O(\gamma(\epsilon,k)\cdot p+n\log k+n^{1+\frac{1}{k}}) edges, where Ξ³(Ο΅,k)=(log⁑kΟ΅)O(log⁑k)\gamma(\epsilon,k)=(\frac{\log k}{\epsilon})^{O(\log k)}. These new preservers are significantly sparser than the previous state-of-the-art approximate preservers due to Kogan and Parter.Comment: 61 pages, 3 figure

    A Unified Framework for Hopsets

    Get PDF
    Given an undirected graph G = (V,E), an (?,?)-hopset is a graph H = (V,E\u27), so that adding its edges to G guarantees every pair has an ?-approximate shortest path that has at most ? edges (hops), that is, d_G(u,v) ? d_{G?H}^(?)(u,v) ? ?? d_G(u,v). Given the usefulness of hopsets for fundamental algorithmic tasks, several different algorithms and techniques were developed for their construction, for various regimes of the stretch parameter ?. In this work we devise a single algorithm that can attain all state-of-the-art hopsets for general graphs, by choosing the appropriate input parameters. In fact, in some cases it also improves upon the previous best results. We also show a lower bound on our algorithm. In [Ben-Levy and Parter, 2020], given a parameter k, a (O(k^?),O(k^{1-?}))-hopset of size O?(n^{1+1/k}) was shown for any n-vertex graph and parameter 0 < ? < 1, and they asked whether this result is best possible. We resolve this open problem, showing that any (?,?)-hopset of size O(n^{1+1/k}) must have ??? ? ?(k)
    corecore